1. Field of the Invention
The present invention relates generally to magnetic disk drives (disk drives), and more particularly to a method of expanding the on-track operational range of a disk drive based upon detection of an external vibration condition.
2. Description of the Related Art
A Disk drive generally includes a control system that implements various on-track-declaration algorithms. Generally speaking, the goal of the conventional on-track-declaration algorithm is data reliability and data integrity. The on-track-declaration algorithms achieve these goals by enabling reading or writing only after the disk drive""s transducer head has remained close to track center for some time (e.g. a specified number of servo samples) and, once reading or writing has begun, the on-track-declaration algorithms disable reading or writing if the disk drive""s transducer head moves too far away from track center.
1) Typical On-Track-Declaration Algorithms
Before the data transfer begins, whether writing user data to or reading user data from a desired track, the transducer head must seek to and xe2x80x9csettle inxe2x80x9d to the desired track. The transducer head, however, usually overshoots the desired track. The typical control system addresses overshoot by enabling data transfer only after several successive position error signal (PES) values have fallen within certain prescribed limits, i.e. only after the transducer has remained within a so-called xe2x80x9carrival windowxe2x80x9d for a sufficient amount of time (servo samples). There are usually two separate arrival windows for reading and writing, a xe2x80x9cRead Settle Windowxe2x80x9d and a xe2x80x9cWrite Settle Windowxe2x80x9d The Read Settle Window is relatively liberal since the control system can simply try to re-read the data and apply correction algorithms if it does not correctly read it the first time. The Write Settle Window, on the other hand, is relatively restrictive so that data is written to the target track with minimal risk of sliver error or of corrupting an adjacent track.
After the data transfer has begun, the typical control system stops the transfer under certain conditions. After writing has begun, for example, the typical control system immediately stops writing if the transducer head momentarily exceeds a so-called write unsafe limit (xe2x80x9cWUS limitxe2x80x9d). The WUS limit enhances data integrity by ensuring that data is written relatively close to track center and by protecting adjacent tracks. The foregoing on-track-declaration algorithms will be discussed in detail below after reviewing the general construction and overall operation of a disk drive.
2) An Exemplary Disk Drive and its Read/Write Elements
The on-track-declaration algorithms described above are best understood with reference to an actual disk drive.
Referring to FIG. 1, a conventional disk drive 10 has a head disk assembly (HDA) 20 including at least one disk 23, a spindle motor 22 for rapidly rotating the disk 23, and a head stack assembly (HSA) 40 that includes an actuator assembly 50 and a head gimbal assembly (HGA) (not numbered) with a transducer head 80 for reading and writing data. The HSA 40 is part of a servo control system that positions the transducer head 80 over a particular track on the disk to read or write information from that track. The HSA 40 earns its name from the fact that it generally includes a plurality of HGAs that collectively provide a vertical arrangement of heads called a xe2x80x9chead stack.xe2x80x9d The foregoing components are generally mounted in an enclosure comprising a base 21 and a cover 24. A printed circuit board assembly (PCBA) 30 is secured to the base 21, the PCBA 30 containing suitable circuitry for communicating with a host and controlling the disk drive as is well known in the art.
FIG. 2 is a simplified representation of a magneto-resistive transducer head 80 that has two elements, namely a write element 81 and a read element 82.
Returning to FIG. 1, the industry presently prefers a xe2x80x9crotaryxe2x80x9d or xe2x80x9cswing-typexe2x80x9d actuator assembly 50 that conventionally comprises an actuator body 51 which rotates on a pivot assembly between limited positions, a coil 52 that extends from one side of the actuator body to interact with a pair of permanent magnets to form a voice coil motor (VCM), and an actuator arm 54 that extends from the opposite side of the actuator body to support the HGA.
3) The Servo Control System
A disk drive is ultimately used to store user data in one or more xe2x80x9cdata tracksxe2x80x9d that are most commonly arranged as a plurality of concentric data tracks on the surface of its disk or disks. Special servo information is factory-recorded on at least one disk surface so that the disk drive""s servo control system may control the actuator assembly 50, via the VCM, to accurately position the transducer head to read or write user data to or from the data tracks. The servo information permits the servo control system to repeatedly determine the position of the head relative to the written track. In operation, the disk drive""s servo control system intermittently processes (read only) the pre-recorded servo information while the actuator assembly 50 moves the head to a desired track and, once there, while the disk drive transfers user data to the data track (i.e. writing) or from the data track (i.e. reading).
4) On-Track Declaration Algorithms for READ READY or WRITE READY
FIG. 3A is a position profile 85 (position versus time) of a transducer head being positioned for subsequent execution of a read or write operation. In FIG. 3A, the seek moves the head from a current track X to a target track Y. As shown, the position profile 85 extends through a seek period 91 during which time the head travels across one or more tracks, into a subsequent read settle period 92 or write settle period 93 during which time the head xe2x80x9csettles inxe2x80x9d to the TARGET TRACK CENTER of the target track Y.
FIG. 3B is a graphical representation of the total time it takes to complete a data transfer command in the presence of a vibration state when using a default on-track declaration algorithm. As shown, the time is consumed by the seek time, the settle time, and the actual writing time. In this particular example, it is further shown that the writing is intermittently interrupted due to the existence of the vibration state, thereby extending the overall time to complete the data transfer command.
FIG. 4 is a close-up of the position profile 85 of FIG. 3A, illustrating the xe2x80x9csettling inxe2x80x9d that occurs during the read settle period 91 or write settle period 93. Here, the servo control system attempts to align the transducer head to the TARGET TRACK CENTER within a read settle window 94 (+R percent from track center) or within a write settle window 95 (+W percent from track center) prior to execution of a read or write command. The read and write settle windows 94, 95 are sometimes called xe2x80x9carrival windows.xe2x80x9d A write operation is more critical than a read operation due to the potential of overwriting and corrupting data on an adjacent track. Accordingly, the settle criteria for execution of a write operation is generally more conservative than the settle criteria for execution of a read operation (i.e. W less than R).
The servo system works to bring the transducer head into alignment with TARGET TRACK CENTER during the settling period. Since the transducer head may overshoot TARGET TRACK CENTER at the beginning of the settling period, it is necessary to successively sample the position of the transducer head relative to TARGET TRACK CENTER before starting to execute the read or write operation. Position samples of transducer head relative to TARGET TRACK CENTER are taken by the disk drive servo system at regular time intervals, indicated at T1, T2, T3, T4, T5, T6, T7, T8, T9 and T10. The corresponding samples on position profile 85 are indicated as S1, S2, S3, S4, S5, S6, S7, S8, S9, and S10.
FIG. 4 shows a simple embodiment where a single window parameter is used (i.e. R percent or W percent). In such case, if a predetermined number of consecutive samples (e.g. two for read and three for write) fall within the desired READ SETTLE WINDOW 94 or WRITE SETTLE WINDOW 95, then the servo processor 38 will determine xe2x80x9cREAD READYxe2x80x9d or xe2x80x9cWRITE READYxe2x80x9d. The servo control system, in other words, will declare that the transducer head is acceptably close to the TARGET TRACK CENTER to affect the data transfer operation. For the seek operation shown in FIG. 4, the transducer head is READ READY after sample S2 since two consecutive samples S1 and S2 fall within the READ SETTLE WINDOW 94. The transducer head is WRITE READY at the time of sample S10, since it is positioned within the WRITE SETTLE WINDOW 95 for three consecutive samples S8, S9, and S10. In actual use, the number of servo samples that must fall within the WRITE SETTLE WINDOW 95 is usually more than three, but the precise number is not relevant to understanding this invention.
The foregoing on-track-declaration algorithm does not perform well when the disk drive is subjected to a vibration state that is initiated by an external vibration excitation. FIG. 5, for example, shows how a VIBRATION STATE causes the transducer head to continually swing back and forth beyond the WRITE SETTLE WINDOW 95. With worst case timing, as shown, the servo control system will not declare a WRITE READY condition since no three successive samples fall within the WRITE SETTLE WINDOW 95. A delay of this nature for each and every write command will detrimentally affect drive performance.
FIG. 6 shows a more complex embodiment that places a heavier emphasis on an accurate WRITE READY condition for enhanced data reliability. Here, three window parameters are used to define a ZONED WRITE SETTLE WINDOW 195 having three zones: (1) a near zone 191; (2) a neutral zone 192; and (3) a far zone 193. The near zone 191 extends from the TARGET TRACK CENTER to 10% off track. The neutral zone 192 extends from 10% off track to 13% off track. The far zone 193 extends from 13% off track to 16% off track. In this embodiment, the control system accords each of the zones a xe2x80x9cweightxe2x80x9d as follows:
In operation, the servo control system declares WRITE READY once a successive number of servo samples accumulate a total score of xe2x88x927. In FIG. 6, the transducer head is WRITE READY at the time of sample S20, since the accumulated score reached xe2x88x927 while the head remained within the ZONED WRITE SETTLE WINDOW 195 for at least seven successive samples, in this case for the ten samples from sample S10 through sample S19.
The more complex on-track-declaration algorithm also does not do particularly well when the disk drive is being subject to a vibration state that is initiated by an external vibration excitation. FIG. 7, for example, shows how a VIBRATION STATE #1 causes the transducer head to continually swing back and forth from one neutral zone 192 to the other neutral zone 192. The default on-track-declaration algorithm based on the ZONED WRITE SETTLING WINDOW 195 will eventually result in a score of xe2x88x927 under these conditions, but as shown, the attainment of that score will take significantly longer in the presence of the VIBRATION STATE #1 (here, the score has only reached xe2x88x925 by sample S20). A delay of this nature for each and every write command will detrimentally affect drive performance.
FIG. 8 shows a slightly worse VIBRATION STATE #2 that causes the transducer head to continually swing back and form from one far zone 193 to the other far zone 193. Under these circumstances, the default on-track-declaration algorithm based on the ZONED WRITE SETTLING WINDOW 195 will never reach a score of xe2x88x927 and the drive will effectively be in a complete failure mode.
5) On-Track Declaration Algorithms for READ STOP or WRITE STOP
As noted above, even after the disk drive is executing a read or write command and transferring data to or from the disk, the servo control system continues to monitor the position of the transducer head during that process and, if appropriate, de-asserts the READ READY or WRITE READY gate.
The write unsafe limit, or WUS limit, relates to circumstances under which the control system will terminate writing as a function of the oscillatory deviations of the write element""s path 501 relative to track center (T/C). The WUS limit, to put it another way, corresponds to the write element""s maximum permissible off-track distance before writing is disabled. The WUS limit is usually specified in terms of a percentage track pitch from track center T/C (e.g.xc2x116%).
While writing, the write element 81 may unintentionally deviate from track center due to resonant excitations that produce damped oscillations (initiated, for example, by VCM movements or from a shock event) or, of relevance to this invention, due to external vibration excitations that produce steady-state oscillations (initiated, for example, by nearby components or environmental vibration). In either case, and without regard to the reason for the excursion, the disk drive""s servo control system immediately stops writing upon detecting that the write element 81 has moved beyond the WUS limit.
The tighter the WUS limit, the more frequently that the control system will prematurely stop writing and have to make another pass to try and write the same user data. A higher frequency of disabling writing will reduce the performance of the drive.
FIGS. 9 and 10 are data path diagrams that explain why a WUS limit has been used to date and why it is generally set to a small, xe2x80x9cnarrowxe2x80x9d or xe2x80x9ctightxe2x80x9d value. FIGS. 9 and 10 show hypothetical data paths 501 and 502 of a write element 81 after the servo control system has successfully moved the write element 81 to the desired track in a track seek mode and then entered a track following mode.
In FIG. 9, the write element""s hypothetical excursions from track center T/C are signified by vertical arrows, varying from +5%, to xe2x88x9210%, to +15%, to xe2x88x9214%, to +5%, to xe2x88x923%. In this particular case, none of the excursions exceed the WUS limit and writing continues without hindrance.
In FIG. 10, however, the write element""s hypothetical excursions from track center T/C are signified by vertical arrows, varying from +5%, to xe2x88x9210%, to +18% (!!!), to xe2x88x9214%, to +5%, to xe2x88x923%. In FIG. 10, with the WUS limit set to 16%, writing is disabled just prior to the 18% excursion to protect the user data in the adjacent track. Assuming that the 18% excursion was the result of a one-time shock event, or the like, then the control system will complete the write command by writing the user data to the disk at the next available opportunity.
The foregoing on-track-declaration algorithms that use a static WUS limit do not perform well when the disk drive is subjected to a vibration state that is initiated by an external vibration force. FIG. 11, for example, shows how a hypothetical VIBRATION STATE causes the transducer head to continually swing back and forth from +18% to xe2x88x9218% such that the WUS limit is repeatedly exceeded and write commands, assuming they ever started, are never completed. A disk drive trying to write in a vibration environment of this nature will simply fail to operate.
6) Overall Observations re the Default Algorithms
A restrictive xe2x80x9carrival windowxe2x80x9d increases data reliability by waiting longer for the transducer head to settle in to a tight track follow before the disk drive begins to write the data. A tight WUS limit, likewise, constantly makes sure that the transducer head does not stray too far from the track center of the track being written in order to avoid sliver errors and to prevent corruption of the previously written data of an adjacent track.
Data reliability and data integrity are obviously very laudable goals when it comes to storing and retrieving user data. The default on-track-declaration algorithms normally serve their intended purposes with respect to achieving such goals. As such, the default on-track-declaration algorithms are generally regarded as assets. These same on-track-declaration algorithms may become liabilities, however, if the disk drive is attempting to operate in the presence of a vibration state. In particular, a vibration state may cause the transducer head to move slightly beyond the WRITE SETTLE WINDOW for one or more of the successive samples or cause the transducer head to momentarily or repeatedly cross beyond the WUS limit. If the data could still be written and later retrieved even in the face of the vibration sate, then it would be best of course if the data transfer still took place. Under such circumstances, however, the default on-track-declaration algorithms unnecessarily preclude the data transfer operation from starting or unnecessarily interrupt the data transfer operation before it is finished. A drive that constantly fails to transfer data in the presence of a vibration environment, when it could in fact transfer such data, is not performing at its maximum capability. It is desirable, of course, to obtain every possible element of drive performance in the highly competitive disk drive market.
There remains a need, therefore, for a method of expanding the on-track operational range of a disk drive in order to permit data transfers that otherwise would not occur in the presence of a vibration state.
The invention may be regarded as a method of expanding an on-track operational range of a disk drive that is subject to being in a vibration state that is initiated by an external vibration force. The subject disk drive comprises a control system, the control system is using a default on-track-declaration algorithm for analyzing servo samples and determining whether or not a data transfer operation is warranted. The method comprises the steps of detecting that the vibration state exists and modifying the default on-track-declaration algorithm while the existence of the vibration state is detected. As suggested by comparing FIG. 3C with FIG. 3B, the method may also comprise completing the data transfer operation in less time than if the default on-track-declaration algorithm was in use. The method may, for example, relax the off-center percentages that define the write settle window or the write unsafe (WUS) limit.
In a more specific context, the detecting step is accomplished by indirectly detecting that the vibration state exists by monitoring a control system parameter such as the PES or off-track percentage, the raw error rate experienced during read operations, the frequency of ECC correction, and so on.